package com.sc.study.student.service;

import java.util.List;

import com.sc.study.student.domain.ScStudent;
import com.sc.study.student.domain.ScStudentClazz;

/**
 * 学员班级Service接口
 * 
 * @author sc
 * @date 2022-02-27
 */
public interface IScStudentClazzService 
{
    /**
     * 学员班级查看
     * 查询学员班级包含班级、学员、年级 并且查看这个学员的历史班级
     *
     * @param id 学员班级主键
     * @return 学员班级
     */
    ScStudentClazz selectScStudentClazzIncludeHistoryClazz(Long id);

    /**
     * 查询学员班级
     * 
     * @param id 学员班级主键
     * @return 学员班级
     */
    public ScStudentClazz selectScStudentClazzById(Long id);

    /**
     * 查询学员班级列表包含班级，学员，年级
     * 
     * @param scStudentClazz 学员班级
     * @return 学员班级集合
     */
    public List<ScStudentClazz> selectScStudentClazzList(ScStudentClazz scStudentClazz);


//    public int insertScStudentClazz(ScStudentClazz scStudentClazz);

    /**
     * 新增学员班级
     * @param scStudentList 学员集合
     * @param studentClazzId  班级Id
     * @return
     */
    public int insertScStudentClazz(List<ScStudent> scStudentList, Long studentClazzId);

    /**
     * 新增学员班级
     * @param ScStudentClazz 学员
     * @return
     */
    public int insertScStudentClazz(ScStudentClazz scStudentClazz);

    /**
     * 修改学员班级
     * 
     * @param scStudentClazz 学员班级
     * @return 结果
     */
    public int updateScStudentClazz(ScStudentClazz scStudentClazz);

    /**
     * 批量删除学员班级
     * 
     * @param ids 需要删除的学员班级主键集合
     * @return 结果
     */
    public int deleteScStudentClazzByIds(Long[] ids);

    /**
     * 删除学员班级信息
     * 
     * @param id 学员班级主键
     * @return 结果
     */
    public int deleteScStudentClazzById(Long id);
}
